import { createApp } from 'vue'
import pinia from '@/stores' // 导入Pinia实例
import App from './App.vue'
import router from "@/router"; // 导入路由配置
//引入全局element-plus
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

//导入全部的图标
import * as ElementPlusIconsVue from '@element-plus/icons-vue'

//创建vue实例
const app = createApp(App)
//注册到app上，注册Element Plus图标为全局组件
//ElementPlusIconsVue图标仓库
// Object.entries（...）把对象转换成可遍历的键值对列表
//const [key, component]用来提取Object.entries转换的键和值
//for...of是遍历，
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)//把每个图标都注册成为全局组件
  //key指组件名称（eg：House），component指展示到页面的形状
}


// 挂载核心功能
app.use(pinia)//把整个应用启用pinia状态管理功能，也就是把我们创建的pinia接入应用
app.use(ElementPlus)//让应用认识所有饿了么组件
app.use(router)//同
app.mount('#app')//把配置好的应用挂载到html页面div id="app"></div>上，
// 上面三步是注册并初始化功能，最后一步mount是渲染到页面并启动运行，类似装配硬件和电源开启
